package com.zkthink.ceres.pay.wechat.v3.entity.result.profitsharing;

import com.alibaba.fastjson.annotation.JSONField;
import com.zkthink.ceres.pay.wechat.v3.entity.request.profitsharing.Receivers;
import com.zkthink.ceres.pay.wechat.v3.entity.result.BasePayResult;
import lombok.*;
import lombok.experimental.Accessors;

/**
 * <p>
 * 合并下单结果
 * </p>
 *
 * @author vivi.huang
 * @since 2020/5/17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Builder(builderMethodName = "newBuilder")
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class QueryProfitsharingResult extends BasePayResult {

    private static final long serialVersionUID = 1960459269579244358L;

    /**
     * 分账单状态	status	string(32)	是	分账单状态，枚举值：
     * ACCEPTED：受理成功
     * PROCESSING：处理中
     * FINISHED：分账成功
     * CLOSED：处理失败，已关单
     * 示例值：FINISHED
     */
    @JSONField(name = "status")
    private String status;

    /**
     * 分账接收方列表	receivers	array	是	分账接收方列表。
     */
    @JSONField(name = "receivers")
    private Receivers receivers;

    /**
     * 关单原因	close_reason	string(32)	否	关单原因描述，枚举值：
     * NO_AUTH：分账授权已解除
     * 示例值：NO_AUTH
     */
    @JSONField(name = "close_reason")
    private String close_reason;

    /**
     * 分账完结金额	finish_amount	int	否	分账完结的分账金额，单位为分， 仅当查询分账完结的执行结果时，存在本字段。
     * 示例值：100
     */
    @JSONField(name = "finish_amount")
    private String finishAmount;

    /**
     * 分账完结描述	finish_description	string(80)	否	分账完结的原因描述，仅当查询分账完结的执行结果时，存在本字段。
     * 示例值：分账完结
     */
    @JSONField(name = "finish_description")
    private String finishDescription;



}